
//获取应用实例(获取app.js全局变量必须获取应用实例)
const App = getApp()

//功能页面需要再次引入notify
import Notify from '../../../../../miniprogram_npm/@vant/weapp/notify/notify';

//网络请求封装
import Request_post from "../../../../../request/Request_post"
import Request_get from "../../../../../request/Request_get"

//系统设置项目
import config from "../../../../../config/config"

//时间差
var intervalTime = require("../../../../../utils/CustomFunction/intervalTime.js")

//引入时间函数
var dateArray = require("../../../../../utils/CustomFunction/getDayFirstNowLast.js")
var time = require("../../../../../utils/CustomFunction/getNowTime.js")

//引入日期时间：（格式化、反格式化）函数
var formatDate = require("../../../../../utils/CustomFunction/dateFormat.js")
var unformatDate = require("../../../../../utils/CustomFunction/dateUnFormat.js")

// 获取当前时间（yyyy-mm-dd hh:mm:ss）
var todayDatetTime = require("../../../../../utils/CustomFunction/getNowDateTime.js")

// 数字保留2位小数
var toDecimalTwo = require("../../../../../utils/CustomFunction/DecimalTwo.js")




Page({

  /**
   * 页面的初始数据
   */
  	data: {

		// 外链资源
		parkicon:config.imageUrl+"parkicon.png",
		// Discounts:config.imageUrl+"Discounts.png",
		useitg:config.imageUrl+"useitg.png",
		// 空页面
		EmptyPage:config.imageUrl+"EmptyPage.png",
		// 迷你停车券图片
		MiniparkingCop:config.imageUrl+"MiniparkingCop.png",




		// 去支付按钮状态：false-可用； true-禁用
		button_Statu:false,  
		bt_text:"去支付",
		activeName: '0',
		tip:"",

		// 查询停车费是否成功的标志，以供页面做数据绑定 "loading"-费用查询中  "true"-成功获取信息  "false"-未查到此车牌的停车信息  "freetime"-暂未产生停车费
		pkvRequestvld:"loading",		
 
		//｛测试用：查询停车费是否成功的标志，"true"-成功获取信息｝
		// pkvRequestvld:"true", 

		// 费用重计算窗口的现实标志
		recalculate:'true',


		// 带输入框弹窗
		showModal: false,
		textV:'',


    // 支付参数（需要在 停车费查询 && 费用计算 两个Api请求中，同步做变量赋值）
		amount: 0,			//支付金额
		pkvids:"",			//停车券核销ID
		pkvamt:0,				//停车券抵扣金额(定额券)
		pkvtime:"",			//停车券免停时长(时长券)
		pltno:"",				//车牌号(时长券)
		pkvcnnno:"",		//停车场编号
		pkvcnndes:"",		//停车场名称
		pkvindat:"",		//入场时间
		pkvtimes:"",		//停车时长（秒）
		pkvtimesdes:"",	//停车时长描述
		delaytimes:"",	//缴费后的免停时长（分钟）
		pkvttlamt:"",		//停车费计费
		
		activeName: '1',

		



	/** 以下为测试数值变量赋值 */
	// ｛测试｝
		// pkvinfo:
		// {
		// 	pkvfee: 12,
		// 	pkvids:"",
		// 	pkvtime:"",
		// 	pltno:"云A02X57",
		// 	pkvcnnno:99887889467655,
		// 	pkvcnndes:"昭通金池停车场",
		// 	pkvindat:"2021-05-12 14:30:22",
		// 	pkvtimes:3600,
		// 	pkvtimesdes:"60分钟",
		// 	delaytimes:"",
		// 	pkvttlamt:12,
		// },

		// pkvRequestvld:"true",
		// amount:12,						//支付金额
		// pkvids:"",																//停车券核销ID
		// pkvamt:12,																	//停车券抵扣金额(定额券)
		// pkvtime:"",																//停车券免停时长(时长券)
		// pltno: "云A02X57",							//车牌号
		// pkvcnnno: "99887889467655",				//停车场编号
		// pkvcnndes: "昭通金池停车场",			//停车场名称
		// pkvindat: "2021-05-12 14:30:22",				//入场时间
		// pkvtimes: 3600,				//停车时长（秒）
		// pkvtimesdes: "60分钟",	//停车时长描述
		// delaytimes:"",		//缴费后的免停时长（分钟）
		// pkvttlamt: 12,				//停车费计费
		// pkvfee: 12,
		// Payable: 12,
		// oripkvfee:12,
		// count: 2,

	},

	
	
	/* 折叠面板的当前item */ 
	onChange(event) {
		// console.log(event)
    this.setData({
      activeName: event.detail,
    });
	},

	/** 跳转到车牌录入页面 */
	ToInputNumberPlat:function(){
		wx.redirectTo({
			url: "/SubpkgParkingPay/pages/ParkingPublic/NumberPlate/NumberPlate",
		})
	},

	/** 跳转到优惠券中心 */
	tocopcenter:function(){
		wx.redirectTo({
			url: '/SubpkgMarketing/pages/Coupon/CopCenter/CopCenter',
		})
	},



	/** 跳转到免费领券 */
	freeGet_cop:function(){
		wx.redirectTo({
			url: '/SubpkgMarketing/pages/Coupon/IssueCopList/IssueCopList'+'?echmodid=02&index=1',
		})
	},
	/** 在线购停车券：跳转到有赞小程序相关页面*/
	payPkvCop:function(){
		wx.navigateToMiniProgram({
			appId: 'wx54b2f86f6aecfdff',
			path: '/packages/goods/detail/index?alias=2xctrui0hkz175j&shopAutoEnter=1',
			success(res) {
				console.log(res)
			}
		})
	},

		/**攒西苑汇积分：跳转到有赞小程序相关页面*/
		toYouZanApp:function(){
			wx.navigateToMiniProgram({
				appId: 'wx54b2f86f6aecfdff',
				path: '/pages/usercenter/dashboard/index',
				success(res) {
					console.log(res)
				}
			})
		},

	
	
	/* radio单选项框绑定的方法 && 同时重新计算应缴停车费 */ 
	radioChang:function(e) {	
		var that = this
		let pkvid = e.detail.value
		//通过点击获取的pkvid在停车券数组copidList中过滤出对应的券记录
		const selectedPkvinfo = that.data.parkingcopList.filter((item,index,arr) => item.pkvid == pkvid)
		that.setData({
			pkvid: selectedPkvinfo[0].pkvid,
			pkvusepoint: 0		// 选择停车券，必须把已经输入的积分清理（券 || 积分 只能用一种，同理选择积分的时候也需要将已选的停车券还原未选择状态）
		})
		// 使用积分抵扣，需要将应付金额（含优惠） 重置为 原价停车费（不含任何优惠）
		that.setData({
			Payable: this.data.oripkvfee	
		})

		/**
		 * 这里还要处理，将已经使用积分后，的实际应缴停车费，重置为未优惠时的原价停车费
		 */



		//Api请求 停车缴费(昭通金池)-ztjcpkvsrv-8177：004-停车缴费计算
		that.calculate_pkvfee()

	},


	/* checkbox复选项框绑定的方法 （复选暂时不用）*/ 
	checkboxChang:function(e) {
		var that = this
		let copidList = e.detail.value
		var parkCopinfo = e.detail.value.split(","); //将“逗号”分割的字符串转换为数组
		that.setData({
			copidList
		})
		var pkvList = that.data.parkingcopList   // 当前会员拥有的全部停车券数组
		var selectedList = that.data.copidList	 // 选择的停车券数组
		var filterList = []										   // 过滤后得到的“单”数组
		var selectedPkvinfo = []
		for(var n = 0; n < selectedList.length; n++){
			filterList = pkvList.filter((item,index,arr) => item.pkvid == selectedList[n])
			selectedPkvinfo.push(filterList[0])  // 加上数组的下标[0] 确保push进数组里的是，来源数组里的对象
		}
		that.setData({      
			selectedPkvinfo
		})
		// console.log(that.data.selectedPkvinfo)
	},
	
	/* 点击优惠券获取index 并显示选中图标 */
	// ExchangeNav:function(e){
	// 	var that = this
	// 	that.setData({
	// 		ExchangeCopIndex:e.currentTarget.dataset.index
	// 	})
	// 	// console.log(e)
	// },


	/** 获取有赞的积分 */
	_getYouZanVldItg:function(){
		var that = this
		Request_get.get(
			config.domainName+config.pkvApi + "/pkvsrv/youzanitgvlu",
			{ 
				mbl: wx.getStorageSync('StrMbrInfo').mbl 
			},
			function(res){
				if(res != 'undefinde' && res.return_no == 1){
					that.setData({
						point: res.return_data.point
					})
				}
			}

		)
	},

	/** 获取有赞积分规则 (多少积分 抵用 1元停车费) */
	_getYouZanItglSet:function(){
		var that = this
		Request_get.get(
			config.domainName+config.pkvApi + "/pkvsrv/youzanitgvluset",
			{},
			function(res){
				if(res != 'undefinde' && res.return_no == 1){
					that.setData({
						itgvluset: res.return_data.itgvluset		 // 1元钱的抵扣量是固定的，返回的积分值就是可以抵扣1元钱的积分值
					})
				}
			}

		)
	},



	/**
	* 生命周期函数--监听页面加载 
	*/
	onLoad: function (options) {
		var that = this
		// 从优惠券列表选中的券号传过来的（券列表 —— 录入车牌 —— 缴费）
		var copid = unescape(options.copid)
		if(copid){that.setData({pkvid: copid})}

		var numberPlate = options.numberPlate
		that.setData({
			Input_numberPlate:numberPlate,
		})

		/** Api请求 停车缴费(昭通金池)-ztjcpkvsrv：001-停车费用查询 */  
		getApp().loginPromise.then(v => {
			that.pkvfeeQurey_Promise = new Promise((v,r)=>{
				Request_get.get(
					config.domainName+config.pkvApi+"/pkvsrv/getpkvfee",
					{
						pltno: that.data.Input_numberPlate,
						freeminutes: 0			// 这个参数前端不管，传默认值 0 （这个是后端服务使用的）
					},
					function(res){
						// console.log(res.return_data.pkvodrInfo.orderStatus)
						// console.log(res)
						if(res != 'undefinde' && res.return_no == 1 && res.return_data.pkvfee > 0){
							console.log('001-停车费用查询:成功回调（所有停车场 && 停车费 > 0）',res)
							that.setData({
								needPay: "y",																	//是否需要支付（需要支付-微信、微信+会员权益、会员权益；不需要支付-直接通知停车场取车，不需要支付为怡丰机械车库独有的支付方式）
								pkvinfo:res.return_data,
								pkvRequestvld: "true",														//查询停车费是否成功的标志，以供页面做数据绑定  "true" 成功获取信息  "false" 未查到此车牌的停车信息  "freetime"暂未产生停车费 
								amount: res.return_data.pkvfee,											//支付金额
								pkvids:"",																		//停车券核销ID
								pkvamt:toDecimalTwo.toDecimalTwo(0),									//停车券抵扣金额(定额券)
								pkvtime:"",																		//停车券免停时长(时长券)
								pkvodrno: res.return_data.pkvodrno,
								pltno: res.return_data.pltno,												//车牌号
								pkvcnnno: res.return_data.pkvcnnno,										//停车场编号
								pkvcnndes: res.return_data.pkvcnndes,									//停车场名称
								pkvindat: unformatDate.DatString(res.return_data.pkvindtm),		//入场时间
								pkvtimes: res.return_data.pkvtimes,										//停车时长（秒）
								pkvtimesdes: res.return_data.pkvtimesdes,								//停车时长描述
								delaytimes: res.return_data.delaytimes,								//缴费后的免停时长（分钟）
								pkvttlamt: res.return_data.pkvfee,										//停车费计费
								oripkvfee: res.return_data.pkvfee,										//停车费应缴金额（不含任何停车优惠）
								pkvfee: toDecimalTwo.toDecimalTwo(res.return_data.pkvfee),
								Payable: toDecimalTwo.toDecimalTwo(res.return_data.pkvfee),		//页面数据绑定的支付金额（无抵用券：oripkvfee = pkvfee ； 使用优惠券：Payable = pkvstl_waitpayamt）
							})
							that.pkvdesConver();
							wx.setStorageSync('pkvodrInfo', res.return_data.pkvodrInfo)		// 海康停车场在支付时需要原样回传的数据，此数据在停车费查询时拿到后存缓存
							v(true)	

							// 车牌号查询成功后，绑定此车牌
							that.bindplno()	

							// that.test(); //测试新能源车牌样式
							// console.log(that.data.pkvinfo)

						}else if(res != 'undefinde' && res.return_no == 1 && res.return_data.pkvfee == 0 && res.return_data.pkvodrInfo.orderStatus == 0 &&　res.return_data.pkvcnnno　== 'ZTJC_YF'){   // orderStatus == 0 是怡丰机械车库，待支付订单状态
							console.log('001-停车费用查询:成功回调（ZTJC_YF 怡丰停车场 && 停车费 == 0 && pkvodrInfo.orderStatus == 0 ）',res)
							that.setData({
								button_Statu:false,															//怡丰停车场特殊处理（按钮可用）
								bt_text:"直接取车",															 //怡丰停车场特殊处理（按钮显示的文字：直接取车）
								needPay: "n",																	//是否需要支付（需要支付-微信、微信+会员权益、会员权益；不需要支付-直接通知停车场取车，PS:不需要支付为“怡丰机械车库”的停车费=0时的支付方式）
								pkvinfo:res.return_data,
								pkvRequestvld: "true",														//查询停车费是否成功的标志，以供页面做数据绑定  "true" 成功获取信息  "false" 未查到此车牌的停车信息  "freetime"暂未产生停车费 
								amount: res.return_data.pkvfee,											//支付金额
								pkvids:"",																		//停车券核销ID
								pkvamt:toDecimalTwo.toDecimalTwo(0),									//停车券抵扣金额(定额券)
								pkvtime:"",																		//停车券免停时长(时长券)
								pkvodrno: res.return_data.pkvodrno,
								pltno: res.return_data.pltno,												//车牌号
								pkvcnnno: res.return_data.pkvcnnno,										//停车场编号
								pkvcnndes: res.return_data.pkvcnndes,									//停车场名称
								pkvindat: unformatDate.DatString(res.return_data.pkvindtm),		//入场时间
								pkvtimes: res.return_data.pkvtimes,										//停车时长（秒）
								pkvtimesdes: res.return_data.pkvtimesdes,								//停车时长描述
								delaytimes: res.return_data.delaytimes,								//缴费后的免停时长（分钟）
								pkvttlamt: res.return_data.pkvfee,										//停车费计费
								oripkvfee: res.return_data.pkvfee,										//停车费应缴金额（不含任何停车优惠）
								pkvfee: toDecimalTwo.toDecimalTwo(res.return_data.pkvfee),
								Payable: toDecimalTwo.toDecimalTwo(res.return_data.pkvfee),		//页面数据绑定的支付金额（无抵用券：oripkvfee = pkvfee ； 使用优惠券：Payable = pkvstl_waitpayamt）

								pkvfee: 0
							})
							that.pkvdesConver();
							wx.setStorageSync('pkvodrInfo', res.return_data.pkvodrInfo)		// 海康停车场在支付时需要原样回传的数据，此数据在停车费查询时拿到后存缓存
							v(true)	

							// 车牌号查询成功后，绑定此车牌
							that.bindplno()

						}
						else if(res != 'undefinde' && res.return_no == 1 && res.return_data.pkvfee == 0 && res.return_data.pkvcnnno　!= 'ZTJC_YF'){
							console.log('001-停车费用查询:成功回调（“非怡丰”的地下停车场 && 停车费 == 0）',res)
							that.setData({
								pkvRequestvld:"freetime",
								freetimeInfo: "车辆『"+that.data.Input_numberPlate+"』暂未产生停车费",
							})
							// 车牌号查询成功后，绑定此车牌
							that.bindplno()
						}else if(res != 'undefinde' && res.return_no != 1){
							that.setData({
								pkvrequestinfo:"车辆『"+that.data.Input_numberPlate+"』"+res.return_msg,
								pkvRequestvld:"false",
							})
							// wx.removeStorageSync('pkvodrInfo_HK')
						}else if(!res){
							// Api获取失败，则返回失败信息
							wx.showModal({
								content: res.return_msg,
								showCancel:false,
							})
						}
					}
				)
			})
		})

		/** Api请求 停车缴费(昭通金池)-ztjcpkvsrv： 002-会员停车券列表查询 */
		getApp().loginPromise.then(v => {	
			
			Request_get.get(
				config.domainName+config.pkvApi+"/pkvsrv/listmbrpkvcop",
				{
					mbrid: wx.getStorageSync('StrMbrInfo').mbrid
				},
				function(res){
					if(res != "undefined" && res.return_no == 1){
						const parkingcopArray = res.return_data
						for( var i = 0; i < parkingcopArray.length; i++){
							parkingcopArray[i].checked = false   //为radio组件的勾选增加一个属性
						}
						// const tempList = parkingcopArray.filter((item,index,arr) => item.copchtid != '10')	// 过滤掉：时长抵用券（和谐广场只用定额券）
						const tempList = parkingcopArray
						that.setData({
							parkingcopList:tempList,
							count: tempList.length
							})
					}else{
						// Api获取失败，则返回失败信息
						wx.showModal({
							content: res.return_msg,
							showCancel:false,
						})
					}
					// console.log(that.data.parkingcopList)
					// 下面这段代码，是通过在【我的券包】中点击停车券后，携带券号进入到本页面，已实现进入本页面后，券已经被选中的效果
					if(that.data.pkvid !== 'undefined' && that.data.pkvid !== '' ){
						var parkingcopList = that.data.parkingcopList
						var pkvid =  that.data.pkvid
						var pkvttl = ""
						parkingcopList.forEach((i) =>{
							if(i.pkvid === pkvid){
								i.checked = true
							}
						})
						// console.log(parkingcopList)
						that.setData({
							parkingcopList,
						})
						// 停车费计算
						that.calculate_pkvfee()
					}
				}
			)
		})
		
		/** 判断怡丰停车场的特殊情况（查询后：金额 ==0 && createTime == "") 将禁用支付/取车按钮*/
		that.Verification();
		/** 获取有赞积分 */
		that._getYouZanVldItg();
		/** 获取有赞积分抵扣规则 */
		that._getYouZanItglSet();

	},


	/** 判断车牌是否已绑定 */
	bindplno:function(){
		var that = this
		var inputpltno = that.data.Input_numberPlate
		// Api调用 微服务wxmkt_server：15-001 会员车牌列表查询
		Request_get.get(
			config.domainName+'api_wxmkt_server/mbrplt/listmbrplt',
			{pltno: inputpltno},
			function(res){
				// console.log(res)
				if(res != 'undefined' && res.return_no == 1  && res.return_data.length == 0 ){
					// console.log('车牌未绑定，开始进行绑定操作')
					// Api调用 15-002 会员车牌注册绑定
					Request_post.post(
						config.domainName+"api_wxmkt_server/mbrplt/registermbrplt",
						{pltno: inputpltno},
						function(res){
							if(res == 'undefined' && res.return_no != 1){
								that.setData({
									pltnoBindErrorMsg: res.return_msg
								})
								// Notify(that.data.pltnoBindErrorMsg);
							}
						}
					)
				}else if(!res){
					// Api获取失败，则返回失败信息
					wx.showModal({
						content: res.return_msg,
						showCancel:false,
					})
				}
			}
		)
	},


	/** 重新计算停车费（被调用） */
	calculate_pkvfee:function(){
		var that = this
		//Api请求 停车缴费(昭通金池)-ztjcpkvsrv-8177：004-停车缴费计算  
		that.pkvfeeQurey_Promise.then(v => {	
			Request_post.post(
				config.domainName+config.pkvApi+"/pkvsrv/mbrpkvstl",
				{
					pltno: that.data.Input_numberPlate,
					pkvids: that.data.pkvid,
					pkvcnnno: that.data.pkvcnnno,
					mbl:  wx.getStorageSync('StrMbrInfo').mbl,
					pkvusepoint: parseInt(that.data.pkvusepoint) ,
					mbrparams: wx.getStorageSync('StrMbrInfo').mbrparams
				}, 
				function(res){

					if(res != 'undefinde' && res.return_no == 1){

						// 回调赋值：如果用券抵扣的，因为回调中含有数组所以单独判断下，数组存在才做数据绑定（否则用积分抵扣时，数组不存在，这里就会报错）
						if(res.return_data.pkvstl_detail.length > 0){
							that.setData({
								pkvttl: res.return_data.pkvstl_detail[0].pkvttl,
								pkvids: res.return_data.pkvstl_detail[0].pkvid,				//停车券核销ID
								pkvamt: res.return_data.pkvstl_detail[0].pkvamt,			//停车券抵扣金额(定额券)
							})
						}
						// 回调赋值：其他非数组的，则按常规进行数据绑定
						that.setData({
							pkvfee:res.return_data,
							amount: res.return_data.pkvstl_waitpayamt,						//支付金额
							pkvstltimes: res.return_data.pkvstltimes,							//停车券免停时长(时长券)
							Payable: res.return_data.pkvstl_waitpayamt,
							pkvfee: res.return_data.pkvttlamt,
							pkvamt: res.return_data.pkvstlamt,
							pkvusepointamt: res.return_data.pkvusepointamt,
						}) 

						that.pkvdesConver();


						if(that.data.pkvamt > 0 || that.data.pkvstltimes >0){
							// 顶部消息通知的赋值
							Notify({
								message: '已选择停车券：['+res.return_data.pkvstl_detail[0].pkvdes+']',				//通知详情描述
								color: '#FFFFFF',				//通知栏字体颜色
								background: '#07C160',		//通知栏背景色
								duration: 3000,				//持续时长
							});
						}else{
							// 顶部消息通知的赋值
							Notify({
								message: '使用积分抵扣：'+that.data.pkvusepointamt+'元停车费',				//通知详情描述
								color: '#FFFFFF',				//通知栏字体颜色
								background: '#07C160',		//通知栏背景色
								duration: 3000,				//持续时长
							});

						}

						

					}else{
						// Api获取失败，则返回失败信息
						wx.showModal({
							content: res.return_msg,
							showCancel:false,
						})
					}
				}
			)
		})
		


	},
	


  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
	// 获取当前页面路径
	console.log(this.route)
	
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

	
  },


	/* 立即缴费 || 直接取车 */
	onSubmit:function(){
		var that = this
		var needPay = that.data.needPay		
		// 缴费前再次请求停车资费是否发生变化，如果发生变化，则提示顾客并再次发起支付请求
		/** Api请求 停车缴费(昭通金池))-ztjcpkvsrv：001-停车费用查询 */
		Request_get.get(
			config.domainName+config.pkvApi+"/pkvsrv/getpkvfee",
			{ pltno: that.data.pkvinfo.pltno },
			function(res){
				console.log('立即缴费-车费用查询-回调',res)
				if(res != 'undefinde' && res.return_no == 1 ){
					that.setData({
						nowpkvfee:res.return_data.pkvfee
					})
					console.log(that.data.oripkvfee)
					console.log(that.data.nowpkvfee)
					console.log(that.data.needPay)

					if(that.data.oripkvfee != that.data.nowpkvfee){  
						console.log('点击去支付按钮后，查询到的费用和目前页面的费用不相等')
						// 支付时再次进行费用查询的费用 != 之前的费用时：提示顾客资费有变化，确认后 强制重新请求停车费
						wx.showModal({
							title: '资费变化确认',
							content: '由于您停留在本页面时，停车系统的资费已经发生变化，请重新确认停车资费',
							showCancel: false,
							confirmText:"确定",	
							confirmColor: 'skyblue',
							success (res) {
								if (res.confirm) {
									// 刷新页面
									that.PageRefresh() 
									that.setData({button_Statu:false,bt_text:"去支付"})
								} 
							}
						})
					}else if(that.data.pkvinfo.pkvfee == that.data.nowpkvfee){
						// console.log('点击去支付按钮后，查询到的费用和目前页面的费用相等')
						// 支付时再次进行费用查询的费用 == 之前的费用时：费用无变化，开始支付			
						// return;
						if( needPay == 'y' ){				// 需要支付（微信、微信+会员权益、会员权益）：针对地下停车场
							console.log('需要支付（微信、微信+会员权益、会员权益）：针对地下停车场')
							that.WeChatPay();
						}else if( needPay == 'n' ){		// 不需要支付-直接通知停车场取车，PS:不需要支付为“怡丰机械车库”的停车费=0时的支付方式
							that.getCar();
						}
					}
				}else{
					wx.showModal({
						content: res.return_msg,
						showCancel:false,
					})
					that.setData({button_Statu:false,bt_text:"去支付"})
				}
			}
		)

	},

  

	/** 直接取车 */
	getCar:function(){
		var that = this
		/** Api请求：昭通金池-ztjcpkvsrv 002-直接取车(怡丰) */
		Request_post.post(
			config.domainName+config.pkvApi+"/pkvsrv/getcar",
			{ 
				pltno: that.data.Input_numberPlate, 
				pkvodrInfo: wx.getStorageSync('pkvodrInfo')
			},
			function(res){
				// console.log('直接取车res回调：',res)
				if(res != 'undefined' && res.return_no == 1){
					// console.log('直接取车成功回调：',res)
					wx.removeStorageSync('pkvodrInfo')
					const getnowDateTime = todayDatetTime.getNowDateTime()
					that.setData({ trddtm: getnowDateTime })
					wx.redirectTo({   
						url:"/SubpkgParkingPay/pages/ParkingPayment/"+App.globalData.pkvContext+"/Payment_Success/Payment_Success?bizcfmdtm="+that.data.trddtm+"&pltno="+that.data.pltno+"&delaytimes="+that.data.delaytimes+"&pkvcnnno="+that.data.pkvcnnno+"&msg="+res.return_msg
					})
				}else{
					wx.showModal({
						title: res.return_msg,
						showCancel:false,
					})
				}
			}
		)
	},

	/* 支付代码 */
	WeChatPay:function(){
		var that = this
		var bllno = App.globalData.mbrid + Math.round(new Date() / 1000) // 第三方在线充值单业务单号：mbrid+时间戳
		that.setData({bllno})
		that.setData({button_Statu:true,bt_text:"正在支付.."})
		console.log(that.data.amount)
		/** Api请求：停车缴费(昭通金池)-ztjcpkvsrv：101-支付请求-停车缴费 **/
		Request_post.post(
			config.domainName+config.pkvApi+"/paysrv/pay",
			{
				bllno: that.data.bllno,                         //  第三方业务单号：停车支付单号-极点ERP单号
				amount: that.data.amount,                       //  支付金额
				mbl: wx.getStorageSync('StrMbrInfo').mbl,
				pkvusepoint: parseInt(that.data.pkvusepoint) ,
				open_id: getApp().globalData.wx_openid,         //  付款人的wx_openid
				bizparams: {                                    // --业务参数对象{ 业务参数根据不同的业务支付接口提交不同参数，本例是优惠券购券支付}
					pltno: that.data.pltno,
					pkvids: that.data.pkvids,
					pkvcnnno: that.data.pkvcnnno,
					mbrparams: wx.getStorageSync('StrMbrInfo').mbrparams,
					pkvodrInfo: wx.getStorageSync('pkvodrInfo')
				}
			}, 
			function(res){
				console.log(res)
				if(res != 'undefinde' &&　res.return_no == 1){			//res.return_no == 1 支付成功的第一种情况：纯微信支付 or 微信支付+停车券支付	
					console.log('支付请求-停车缴费：微信支付/微信+优惠券支付-回调',res)		
					that.setData({rsn:res.return_data.rsn})	
					that.setData({
						rsn:res.return_data.paypms.rsn,
						bizcfmdtm:res.return_data.trddtm,
					})
					// return;
					/** Api请求：微信_Api ———— 发起微信支付 */
					wx.requestPayment({
						timeStamp: res.return_data.paypms.payment_params.timeStamp,      //发起支付请求时的时间戳
						nonceStr: res.return_data.paypms.payment_params.nonceStr,        //随机字符串
						package: res.return_data.paypms.payment_params.package,          //统一下单接口返回的 prepay_id=****（即：package的值）：
						signType: res.return_data.paypms.payment_params.signType,        //签名算法，应与后台下单时的值一致
						paySign: res.return_data.paypms.payment_params.paySign,          //签名
						success:function(e){
							// console.log(e)
							/** 支付完毕后的操作 */
							wx.showLoading({
								title: '获取支付结果',
							});
							// 开始轮询支付结果
							that.keyId = setInterval(() => {
								var numVlu = that.data.num + 1  //轮询的次数累加
								that.setData({num:numVlu})
								that.wxPay_Result();            //轮询时执行的方法
							},1500) //轮询间隔时间
							
						}, /** 完成支付 **/
						fail:function(i){
							// console.log(i)
							that.PageRefresh() 
							that.setData({button_Statu:false,bt_text:"去支付"})
						}
					})
				}else if(res != 'undefinde' && res.return_no == 2){  //res.return_no == 2 支付成功的第二种情况：纯优惠券支付, 无微信支付，成功后直接跳转成功页面
					// console.log('纯优惠券支付-回调',res)
					that.setData({
						pkvstltimes: res.return_data.mbrpkvpay_cshinfo.pkvstltimes,				// 如果是时长券，pkvstltimes是时长的抵扣时间（分钟）
						pkvamt: res.return_data.mbrpkvpay_cshinfo.pkvstl_detail[0].useamt,	// 如果是定额券，pkvamt是抵扣的金额（元）
						trddtm: res.return_data.trddtm,
						scd: res.return_data.scd
					}) 
					that.setData({button_Statu:false,bt_text:"去支付"})
					wx.removeStorageSync('pkvodrInfo')
					wx.redirectTo({   
						url:"/SubpkgParkingPay/pages/ParkingPayment/"+App.globalData.pkvContext+"/Payment_Success/Payment_Success?bizcfmdtm="+that.data.trddtm+"&scd="+that.data.scd+"&amount="+that.data.amount+"&pkvamt="+that.data.pkvamt+"&pltno="+that.data.pltno+"&delaytimes="+that.data.delaytimes+"&pkvstltimes="+that.data.pkvstltimes+"&pkvcnnno="+that.data.pkvcnnno
					})
				}
				else if(res == 'undefinde' || (res.return_no != 1 && res.return_no != 2)){
					wx.showModal({
						title: res.return_msg,
						showCancel:false,
						success: function (res) {
							if (res.confirm) {
								// 81-昆明奥博克支付 ———— 支付请求-支付请求非正常回调
								that.setData({
									button_Statu:false,
									bt_text:"去支付"
								})
								that.PageRefresh() 
							} 
						}
					})
				}

			}
		)
	},

	/* 微信支付结果查询，支付后轮询时调用此方法 */
	wxPay_Result:function(){
		var that = this
		/** Api请求 昆明奥博克支付 ———— 支付结果查询 */
		Request_get.get(
			config.domainName+config.pkvApi+"/paysrv/payresult",
			{
				biztypid: "mbrpkvpay",
				bllno: that.data.bllno,
				paybllno: that.data.rsn
			},
			function(res){
				// console.log('支付结果轮询：微信支付/微信+优惠券支付-回调',res)	
				if( res != 'undefinde' && res.return_no == 1 ){
					that.setData({
						// bizcfmdtm:res.return_data.bizcfmdtm,
						paybllno:res.return_data.paybllno
					})
					wx.hideLoading()
					clearInterval(that.keyId)   //终止轮询
					//成功获取支付结果——终止轮询后的操作 （ --根据业务接口不同操作也不同 ）
					that.setData({button_Statu:false,bt_text:"去支付"})
					wx.removeStorageSync('pkvodrInfo')	
					wx.redirectTo({ 
						url:"/SubpkgParkingPay/pages/ParkingPayment/"+App.globalData.pkvContext+"/Payment_Success/Payment_Success?bizcfmdtm="+that.data.bizcfmdtm+"&paybllno="+that.data.paybllno+"&amount="+that.data.amount+"&pkvamt="+that.data.pkvamt+"&pltno="+that.data.pltno+"&delaytimes="+that.data.delaytimes+"&pkvstltimes="+that.data.pkvstltimes+"&pkvcnnno="+that.data.pkvcnnno
					})
				}else if(res != 'undefinde' && res.return_no != 1 && that.data.num == 60){    //每间隔1.5秒做一次轮询，轮询60次（90秒）后，还没有获得支付成功的结果就判定支付失败！。
					wx.hideLoading()
					clearInterval(that.keyId)   //终止轮询
					//未获取支付结果——终止轮询后的操作 （ --根据业务接口不同操作也不同 ）
					wx.showModal({
						title:"支付异常",
						content:"未获取到支付成功结果\r\n异常业务订单号：\r\n"+that.data.bllno,
						showCancel:false,
						success: function (res) {
							if (res.confirm) {
								that.setData({button_Statu:false,bt_text:"去支付"})
								wx.redirectTo({
									url:App.globalData.homePage
								})
							}
						}
					})
				}
			}
		)
	},

	/* 刷新页面-重新获取——停车费用、可用券 */ 
	PageRefresh:function(){
		var that = this
		getApp().loginPromise.then(v => {
			/** Api请求 停车缴费(昭通金池)-ztjcpkvsrv：001-停车费用查询 */
			Request_get.get(
				config.domainName+config.pkvApi+"/pkvsrv/getpkvfee",
				{ pltno: that.data.Input_numberPlate },
				function(res){
					// console.log('刷新页面-停车费用查询-回调',res)
					if(res != 'undefinde' && res.return_no == 1 && res.return_data.pkvfee > 0){
						// console.log('001-停车费用查询:成功回调（所有停车场 && 停车费 > 0）',res)
						that.setData({
							needPay: "y",																	//是否需要支付（需要支付-微信、微信+会员权益、会员权益；不需要支付-直接通知停车场取车，不需要支付为怡丰机械车库独有的支付方式）
							pkvinfo:res.return_data,
							pkvRequestvld: "true",														//查询停车费是否成功的标志，以供页面做数据绑定  "true" 成功获取信息  "false" 未查到此车牌的停车信息  "freetime"暂未产生停车费 
							amount: res.return_data.pkvfee,											//支付金额
							pkvids:"",																		//停车券核销ID
							pkvamt:toDecimalTwo.toDecimalTwo(0),									//停车券抵扣金额(定额券)
							pkvtime:"",																		//停车券免停时长(时长券)
							pltno: res.return_data.pltno,												//车牌号
							pkvcnnno: res.return_data.pkvcnnno,										//停车场编号
							pkvcnndes: res.return_data.pkvcnndes,									//停车场名称
							pkvindat: unformatDate.DatString(res.return_data.pkvindtm),		//入场时间
							pkvtimes: res.return_data.pkvtimes,										//停车时长（秒）
							pkvtimesdes: res.return_data.pkvtimesdes,								//停车时长描述
							delaytimes: res.return_data.delaytimes,								//缴费后的免停时长（分钟）
							pkvttlamt: res.return_data.pkvfee,										//停车费计费
							oripkvfee: res.return_data.pkvfee,										//停车费应缴金额（不含任何停车优惠）
							pkvfee: toDecimalTwo.toDecimalTwo(res.return_data.pkvfee),
							Payable: toDecimalTwo.toDecimalTwo(res.return_data.pkvfee),		//页面数据绑定的支付金额（无抵用券：oripkvfee = pkvfee ； 使用优惠券：Payable = pkvstl_waitpayamt）
						})
						
						wx.setStorageSync('pkvodrInfo', res.return_data.pkvodrInfo)		   // 停车场在支付时需要原样回传的数据，此数据在停车费查询时拿到后存缓存
						that.pkvdesConver();
						// v(true)	

						// that.test();
						// that.setData({Input_numberPlate:'粤BDF256W' })		//测试新能源车牌的显示

					}else if(res != 'undefinde' && res.return_no == 1 && res.return_data.pkvfee == 0 &&　res.return_data.pkvcnnno　== 'ZTJC_YF'){
						// console.log('001-停车费用查询:成功回调（ZTJC_YF 怡丰停车场 && 停车费 == 0）',res)
						that.setData({
							button_Statu:false,															//怡丰停车场特殊处理（按钮可用）
							bt_text:"直接取车",															 //怡丰停车场特殊处理（按钮显示的文字：直接取车）
							needPay: "n",																	//是否需要支付（需要支付-微信、微信+会员权益、会员权益；不需要支付-直接通知停车场取车，PS:不需要支付为“怡丰机械车库”的停车费=0时的支付方式）

							pkvinfo:res.return_data,
							pkvRequestvld: "true",														// 查询停车费是否成功的标志，以供页面做数据绑定  "true" 成功获取信息  "false" 未查到此车牌的停车信息  "freetime"暂未产生停车费 
							amount: res.return_data.pkvfee,											// 支付金额
							pkvids:"",																		// 停车券核销ID
							pkvamt:toDecimalTwo.toDecimalTwo(0),									// 停车券抵扣金额(定额券)
							pkvtime:"",																		// 停车券免停时长(时长券)
							pltno: res.return_data.pltno,												// 车牌号
							pkvcnnno: res.return_data.pkvcnnno,										// 停车场编号
							pkvcnndes: res.return_data.pkvcnndes,									// 停车场名称
							pkvindat: unformatDate.DatString(res.return_data.pkvindtm),		// 入场时间
							pkvtimes: res.return_data.pkvtimes,										// 停车时长（秒）
							pkvtimesdes: res.return_data.pkvtimesdes,								// 停车时长描述
							delaytimes: res.return_data.delaytimes,								// 缴费后的免停时长（分钟）
							pkvttlamt: res.return_data.pkvfee,										// 停车费计费
							oripkvfee: res.return_data.pkvfee,										// 停车费应缴金额（不含任何停车优惠）
							pkvfee: toDecimalTwo.toDecimalTwo(res.return_data.pkvfee),
							Payable: toDecimalTwo.toDecimalTwo(res.return_data.pkvfee),		// 页面数据绑定的支付金额（无抵用券：oripkvfee = pkvfee ； 使用优惠券：Payable = pkvstl_waitpayamt）

							pkvfee: 0
						})
						wx.setStorageSync('pkvodrInfo', res.return_data.pkvodrInfo)		   // 停车场在支付时需要原样回传的数据，此数据在停车费查询时拿到后存缓存
						that.pkvdesConver();
						v(true)	

					}else if(res != 'undefinde' && res.return_no == 1 && res.return_data.pkvfee == 0 && res.return_data.pkvcnnno　!= 'ZTJC_YF'){
						// console.log('001-停车费用查询:成功回调（“非怡丰”的地下停车场 && 停车费 == 0）',res)
						that.setData({
							pkvRequestvld:"freetime",
							freetimeInfo: "车辆『"+that.data.Input_numberPlate+"』暂未产生停车费",
						})
					}else if(res != 'undefinde' && res.return_no != 1){
						that.setData({
							pkvrequestinfo:"车辆『"+that.data.Input_numberPlate+"』"+res.return_msg,
							pkvRequestvld:"false",
						})
						// wx.removeStorageSync('pkvodrInfo_HK')
					}else{
						// Api获取失败，则返回失败信息
						wx.showModal({
							content: res.return_msg,
							showCancel:false,
						})
					}
				}
			)
		})
		
		/** 重置积分抵扣的值 */
		that.setData({
			pkvusepoint:"",
			pkvusepointamt: 0
		})

		/** 判断怡丰停车场的特殊情况（查询后：金额 ==0 && createTime == "") 将禁用支付/取车按钮 */
		that.Verification();

		/** Api请求：51-002 会员电子优惠券列表查询(停车券)  **/
		getApp().loginPromise.then(v => {	
			Request_get.get(
				config.domainName+config.pkvApi+"/pkvsrv/listmbrpkvcop",
				{
					mbrid: wx.getStorageSync('StrMbrInfo').mbrid
				},
				function(res){
					// console.log('刷新页面-会员电子优惠券列表查询-回调',res)
				if(res != "undefined" && res.return_no == 1){
					const parkingcopArray = res.return_data
					for( var i = 0; i < parkingcopArray.length; i++){
						parkingcopArray[i].checked = false   //为radio组件的勾选增加一个属性
					}
					// const tempList = parkingcopArray.filter((item,index,arr) => item.copchtid != '10')		// 过滤掉：时长抵用券（和谐广场只用定额券）
					const tempList = parkingcopArray
					// console.log(tempList)
					that.setData({
						parkingcopList:tempList,
						count: tempList.length,
					})
				}else{
					// Api获取失败，则返回失败信息
					wx.showModal({
						content: res.return_msg,
						showCancel:false,
					})
				}
			})
		})
	},


  /* 带输入框弹窗--控制显示: 显示*/
  onShow_itginput:function(){
		// 当 this.data.pkvusepoint == 0 时，为避免输入时，还要先把0删除的，就把this.data.pkvusepoint赋值为 ""
		if(this.data.pkvusepoint == 0){
			this.setData({
				pkvusepoint: ""
			})
			console.log(this.data.pkvusepoint)
		}
		// 显示弹出框
		this.setData({
			showModal:true
		})
	},
	/* 带输入框弹窗--控制显示: 关闭显示*/
	onClose_itginput:function(){
		// 关闭弹出框
		this.setData({
			showModal:false
		})
	},

 

	/* 带输入框弹窗--获取input输入值 */
	input:function(event){
		this.setData({
			pkvusepoint: event.detail.value,									
		})
		console.log(this.data.pkvusepoint)
	},

	/** 点击使用积分弹出框的确认 */
	useItg_Enter:function(){
		var that = this
		var input_value = that.data.pkvusepoint
		var itgvluset = that.data.itgvluset			// itgvluset是可以抵扣1元钱的积分值
		var t = input_value % itgvluset
		// 判断输入的积分 input_value 是否是 规则积分值 itgvluset 的倍数，用取模的方式 A % B = 0 则 A是B的倍数，否则不是
		if ( t !== 0){
			wx.showModal({
				title: '请输入抵扣规则【'+that.data.itgvluset+'积分】的倍数',
				showCancel: false,		//是否显示取消按钮
				confirmText:"确定",		//默认是“确定”
				confirmColor: 'skyblue',	//确定文字的颜色
				success: function (res) {
					return;
				}
		 })
		}else{
			// 输入值是规则值的倍数校验通过！
			// 如果选择过优惠券抵扣的，将选择的优惠券重置为未选择状态
			var parkingcopList = this.data.parkingcopList
			for(var i in parkingcopList){
				parkingcopList[i].checked = false
			}
			this.setData({
				parkingcopList,									
			})
			// 使用积分抵扣，需要先将应付金额（含优惠） 重置为 原价停车费（不含任何优惠）
			this.setData({
				Payable: this.data.oripkvfee,		// 重置应付金额
				pkvamt: 0,											// 重置定额券优惠金额				
				pkvstltimes: 0,									// 重置时长券优惠金额
				pkvid: "",											// 重置当前选择的优惠券为""(如果选择过优惠券):    pkvid-页面渲染用的
				pkvids: ""											// 重置当前选择的优惠券为""(如果选择过优惠券):		pkvids-JS逻辑赋值传参用的
			})
			this.calculate_pkvfee();
		}


	},






	/** 停车场名称对应（被调用） */
	pkvdesConver:function(){
		var pkvinfo = this.data.pkvinfo
		if(pkvinfo.pkvcnnno == 'ZTJC_HK'){
			pkvinfo.pkvcnndes = '金池地下停车场'
		}else if(pkvinfo.pkvcnnno == 'ZTJC_YF'){
			pkvinfo.pkvcnndes = '金池机械车库'
		}else if(pkvinfo.pkvcnnno == 'XZNM_HK'){
			pkvinfo.pkvcnndes = '学庄农贸停车场'
		}
		this.setData({
			pkvinfo
		})
	},


	/** 判断怡丰停车场的特殊情况（查询后：金额 ==0 && createTime == "") 将禁用支付/取车按钮*/
	Verification:function(){
		var that = this
		var pkvfee = that.data.pkvfee
		var createTime = wx.getStorageSync('pkvodrInfo').createTime
		console.log('开始： 判断怡丰停车场的特殊情况（查询后：金额 ==0 && createTime == "") 将禁用支付/取车按钮')
		if(pkvfee == 0 && createTime ==""){
			that.setData({
				button_Statu: true
			})
		}
	},

	

	/**
	* 生命周期函数--监听页面隐藏
	*/
	onHide: function () {

	},

	/**
	* 生命周期函数--监听页面卸载
	*/
	onUnload: function () {

	},

	/**
	* 页面相关事件处理函数--监听用户下拉动作
	*/
	onPullDownRefresh: function () {

	},

	/**
	* 页面上拉触底事件的处理函数
	*/
	onReachBottom: function () {

	},

	/**
	* 用户点击右上角分享
	*/
	onShareAppMessage: function () {

	},

	//测试用
	test:function(){
		var pkvinfo = this.data.pkvinfo
		pkvinfo.pltno = '云A123456'
		this.setData({
			pkvinfo
		})
		//   console.log(this.data.pkvinfo)
	}

})